var limsJudgmentBasis = Gikam.getPageObject({

    getEditListColumns : function() {
        return [ {
            checkbox : true
        }, {
            index : true
        }, {
            field : 'judgCode',
            title : 'T_LIMS_JUDGMENT_BASIS.JUDGCODE',
            validators: ['notEmpty'],
            width : 140
        }, {
            field : 'judgName',
            title : 'T_LIMS_JUDGMENT_BASIS.JUDGNAME',
            validators: ['notEmpty'],
            width : 160,
            editor: true,
        }, {
            field : 'judgType',
            title : 'T_LIMS_JUDGMENT_BASIS.JUDGTYPE',
            validators: ['notEmpty'],
            editor: true,
            type: 'select',
            search: true,
            category: 'sys',
            param: {
                codeCategoryId: 'specCategory'
            },
        } ];
    },

    getJudgmentTestMethodListColumns : function() {
        return [ {
            checkbox : true
        }, {
            index : true
        }, {
            field : 'testCode',
            title : 'T_LIMS_TEST.TESTCODE',
            width: 140
        }, {
            field : 'ext$.testname',
            title : 'T_LIMS_TEST.TESTNAME',
            width: 140
        }, {
            field : 'methodCode',
            title : 'T_LIMS_METHOD.METHODCODE',
            width: 140
        }, {
            field: 'ext$.methoddesc',
            title: 'T_LIMS_METHOD.METHODDESC',
        } ];
    },

    getJudgmentAnalyteListColumns : function() {
        return [ {
            checkbox : true
        },{index: true}, {
            field : 'analyte',
            title : 'T_LIMS_JUDGMENT_BASIS_TM_ANALYTE.ANALYTE',
            width: 140
        }, {
            field : 'analType',
            title : 'T_LIMS_JUDGMENT_BASIS_TM_ANALYTE.ANALTYPE',
            type: 'select',
            category: 'sys',
            width: 160,
            firstBlank: false,
            param: {
                codeCategoryId: 'analyteResultCategory'
            },
        }, {
            field : 'ext$.unit',
            title : 'T_LIMS_TEST_METHOD_ANALYTE.UNIT',
            type: 'select',
            category: 'sys',
            param: {
                codeCategoryId: 'unitCategory'
            },
        } ];
    },

    getHighLowListColumns : function() {
        return [ {
            checkbox : true
        },{index: true}, {
            field : 'low',
            title : 'T_LIMS_JUDGMENT_BASIS_TM_ANALYTE_HIGHLOW.LOW',
            editor : true,
            type : 'comboBox',
            category : 'sys',
            param : {
                codeCategoryId: 'numberArea-low'
            },
            firstBlank : false,
            validators : [ 'notEmpty']
        }, {
            field : 'high',
            title : 'T_LIMS_JUDGMENT_BASIS_TM_ANALYTE_HIGHLOW.HIGH',
            editor : true,
            type : 'comboBox',
            category : 'sys',
            param : {
                codeCategoryId: 'numberArea-high'
            },
            firstBlank : false,
            validators : [ 'notEmpty']
        }, {
            field : 'judge',
            title : 'T_LIMS_JUDGMENT_BASIS_TM_ANALYTE_HIGHLOW.JUDGE',
            editor : true,
            type : 'select',
            firstBlank: false,
            validators : [ 'notEmpty'],
            search : true,
            category : 'judgeType',
            styleFormatter : function(row) {
                return {
                    backgroundColor : row.ext$.color
                }
            }
        } ];
    },

    getHighLowFormFields : function() {
        return [{
            field : 'high',
            title : 'T_LIMS_JUDGMENT_BASIS_TM_ANALYTE_HIGHLOW.HIGH',
            preInsert: true,
            type : 'comboBox',
            category : 'sys',
            param : {
                codeCategoryId: 'numberArea-high'
            },
            firstBlank : false,
            validators : [ 'notEmpty']
        }, {
            field : 'low',
            title : 'T_LIMS_JUDGMENT_BASIS_TM_ANALYTE_HIGHLOW.LOW',
            preInsert: true,
            type : 'comboBox',
            category : 'sys',
            param : {
                codeCategoryId: 'numberArea-low'
            },
            firstBlank : false,
            validators : [ 'notEmpty']
        }, {
            field : 'judge',
            title : 'T_LIMS_JUDGMENT_BASIS_TM_ANALYTE_HIGHLOW.JUDGE',
            preInsert: true,
            firstBlank: false,
            type : 'select',
            category : 'judgeType',
        } ];
    },

    getBaseInfoFormFields : function() {
        return [ {
            field : 'judgCode',
            title : 'T_LIMS_JUDGMENT_BASIS.JUDGCODE',
            preInsert: true,
            validators: ['unique[/secure/basemodule/coredata/judgment-basiss/action/validate-unique]'],
        }, {
            field : 'judgName',
            title : 'T_LIMS_JUDGMENT_BASIS.JUDGNAME',
            preInsert: true,
            validators : [ 'strLength[0,22]' ]
        }, {
            field : 'judgType',
            title : 'T_LIMS_JUDGMENT_BASIS.JUDGTYPE',
            preInsert: true,
            type: 'select',
            search: true,
            category: 'sys',
            param: {
                codeCategoryId: 'specCategory'
            },
        }, ];
    },

    getChooseListColumns : function() {
        return [{index: true}, {
            field : 'judgCode',
            title : 'T_LIMS_JUDGMENT_BASIS.JUDGCODE',
            width : 160
        }, {
            field : 'judgName',
            title : 'T_LIMS_JUDGMENT_BASIS.JUDGNAME',
            width : 160
        }, {
            field : 'judgType',
            title : 'T_LIMS_JUDGMENT_BASIS.JUDGTYPE',
            type: 'select',
            search: true,
            category: 'sys',
            param: {
                codeCategoryId: 'specCategory'
            },
        }, ];
    },

    baseUrl : IFM_CONTEXT + '/secure/basemodule/coredata/judgment-basiss',
    judgMethodUrl : IFM_CONTEXT + '/secure/basemodule/coredata/judgment-basis-testmethods',
    judgAnalyteUrl : IFM_CONTEXT + '/secure/basemodule/coredata/judgment-basis-tm-analytes',
    highlowUrl : IFM_CONTEXT + '/secure/basemodule/coredata/judgment-basis-tm-analyte-highlows'
});
